package top.lixunda.common.validate.annotation;

import java.lang.annotation.*;

/**
 * @author Xumda
 * @version time:2019/12/9 10:56
 * <p>
 * 上传至必须为设置的值之一
 */
@Target(ElementType.FIELD)
@Retention(RetentionPolicy.RUNTIME)
@Documented
public @interface XumIncludes {

    /**
     * 包含的字符串，为空时等同于''，满足与所有非空字符串
     */
    String[] value() default {};

    /**
     * 数值类型验证，优先级低于value 即String类型
     */
    long[] numbers() default {};

    /**
     * 验证不通过时的返回错误信息，属性值将会替换‘#value#’, 属性名将会替换‘#name#’
     */
    String message() default "";

    /**
     * 验证顺序，数值越小首先进行验证
     */
    double order() default -100.0;

}
